1. Technical Field
The present invention relates generally to a method, system, and computer program product for efficient storage of data in databases. More particularly, the present invention relates to a method, system, and computer program product for creating and using a dynamic storage structure for efficient storage of data in multi-tenant database systems.
2. Description of the Related Art
A database can be used by a variety of applications for storing their respective data. For example, in a business organization, a common installation of a database may be used by the finance department to store financial data, by the human resources department to store employee information, by the development team to store product design data, and by many other departments in a similar manner.
Particularly, in a Software as a Service (SaaS) model, a database can be a service that is utilized, not just by different applications within an organization, but also by a diverse group of clients. Each client using a database service typically has client-specific data that the client stores in the database. Each client, or more particularly, each application, that stores data in a shared database is a “tenant” of the database. A database that provides data storage to multiple tenants is called a multi-tenant database.